#ifndef CONSTANTS_H
#define CONSTANTS_H
#include "math.h"

//typedef enum { head=0, tail=1 } coin;
static unsigned int m_w;
static unsigned int m_z;
const static double PI = 4.0*atan(1.0);

const static float maxN = 8.00;
const static float minorPlus[12][12] = {
    //C
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.85 , maxN , 0.25 , 0.50 , maxN*4 , 0.25 , maxN*4 , 0.25 , 2 , 1.50 , 0.75 , 0.50 },
    //C#
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.125, maxN , 0.75 , 0.75 , maxN*4 , 0.85 , maxN , 0.75 , 0.75 , maxN , maxN , 0.50 },
    //D
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.25 , maxN , 0.50 , 0.25 , maxN*4 , 0.25 , 2.5 , 0.25, 0.25 , maxN , 0.75 , 0.25 },
    //Eb
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.25 , maxN , 0.25 , 0.50 , maxN*4 , 0.25 , 2.5 , 0.25 , 0.25 , maxN , 0.75 , 0.25 },
    //E
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.85 , maxN , maxN , maxN*4 ,maxN*4 , 0.25 , maxN , 0.25 , 0.25 , maxN , maxN , maxN },
    //F
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.50 , maxN , 0.25 , 0.25 , maxN*4 , 0.50 , maxN , 0.25 , 0.25 , maxN , 0.85 , 0.50 },
    //F#
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.85 , maxN , maxN , maxN , maxN*4 , maxN*4 , maxN*4 , 0.10 , maxN , maxN , maxN , 0.85 },
    //G
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.25 , maxN , 0.25 , 0.25 , maxN*4 , 0.25 , maxN*4 , 0.50 , 0.25 , maxN , 0.75 , 0.50 },
    //Ab
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.50 , maxN , 0.25 , 0.50 , maxN , 0.25 , maxN*4 , 0.125, 0.25 , maxN , 0.75 , maxN },
    //A
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.50 , maxN , 0.75 , 0.50 , maxN*4 , 0.5 , maxN*4 , 0.75 , 2.25 , 1.00 ,maxN*4 , 0.125 },
    //Bb
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.25 , maxN , 0.50 , 0.50 , maxN*4 , 0.50 , maxN , 0.50 , 0.25 , maxN , 0.50 , maxN },
    //B
    //C      Db     D      Eb     E      F      F#     G      Ab     A      Bb     B
    { 0.05 , maxN , 0.85 , 0.50 , maxN*4 , 0.85 , maxN , 0.75 , maxN , maxN , maxN , maxN },
};


#endif // CONSTANTS_H
